package wolf.iu.framework;

import java.util.HashMap;
import java.util.Set;
import java.util.Map.Entry;

import org.objectweb.asm.tree.FieldInsnNode;
import org.objectweb.asm.tree.FieldNode;

import wolf.iu.framework.hooks.AbstractClassHookEnum;
import wolf.iu.framework.hooks.AbstractFieldHookEnum;

public class ClassHookContainer {
    ClassContainer fullOldName;

    HashMap<AbstractFieldHookEnum, FieldHook> fields = new HashMap<AbstractFieldHookEnum, FieldHook>();

    public ClassHookContainer(final ClassContainer class_) {
        this.fullOldName = class_;
    }

    public String getFullOldName() {
        return this.fullOldName.getName();
    }

    public void setFieldHook(final AbstractFieldHookEnum field,
            final FieldInsnNode fin) {
        this.fields.put(field, new FieldHook(fin));
    }

    public Set<Entry<AbstractFieldHookEnum, FieldHook>> getFieldMappings() {
        return fields.entrySet();
    }

}
